Pure Type Systems for Functional Programming

نویسندگان

  • Jan-Willem Roorda
  • Johan Jeuring
چکیده

We present a functional programming language based on Pure Type Systems (PTSs). We show how we can de ne such a language by extending the PTS framework with algebraic data types, case expressions and de nitions. Furthermore, we present an e cient type checking algorithm and an interpreter for this language. PTSs are well suited as a basis for a functional programming language because they are at the top of a hierarchy of increasingly stronger type systems. The concepts of `existential types', `rank-n polymorphism' and `dependent types' arise naturally in functional programming languages based on the systems in this hierarchy. There is no need for ad-hoc extensions to incorporate these features. The type system of our language is more powerful than the Hindley-Milner system. We illustrate this fact by giving a number of meaningful programs that cannot be typed in Haskell but are typable in our language.

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Monadic Type Systems: Pure Type Systems for Impure Settings

Pure type systems and computational monads are two parameterized frameworks that have proved to be quite useful in both theoretical and practical applications. We join the foundational concepts of both of these to obtain monadic type systems. Essentially, monadic type systems inherit the parameterized higher-order type structure of pure type systems and the monadic term and type structure used ...

متن کامل

Stability of the seventh-order functional Equations in the β-Gaussian space

The purpose of this paper is to solve the seventh-order functional equation as follows:  --------------------------- Next, we study the stability of this type of functional equation. Clearly, the function ----------  holds in this type functional equation. Also, we prove Hyers-Ulam stability for this type functional equation in the β-Gaussian Banach space.  

متن کامل

Delphin: Functional Programming with Deductive Systems

We present the design and implementation of the strict and pure functional programming language Delphin. Its novel and distinctive features include a two-level design that distinguishes cleanly between the tasks of representing data and programming with data. One level is the logical framework LF [5], serving as Delphin’s data representation language. The other level is T + ω [15], a type theor...

متن کامل

Network Protocol Programming in Haskell

Over seven years, we have developed several network protocol libraries including anti-spam, DNS, HTTP/1.1, HTTP/2 and TLS 1.3 in Haskell. Based on these experiences, we regard Haskell as a safe and highly-concurrent network programming language thanks to its strong type system and lightweight threads (i.e. green threads). This paper describes advantages and disadvantages of Haskell and reports ...

متن کامل

Functional Reactive Programming with Liveness Guarantees As relations are to set-valued functions, so event sources are to behaviours

Functional Reactive Programming (FRP) is an approach to the development of reactive systems which provides a pure functional interface, but which may be implemented as an abstraction of an imperative event-driven layer. FRP systems typically provide a model of behaviours (total time-indexed values, implemented as pull systems) and event sources (partial time-indexed values, implemented as push ...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2007